package com.ysd.lis.service.qc;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ysd.common.Result;
import com.ysd.lis.entity.qc.QcMaterialItemResult;
import com.ysd.lis.request.QcResultTimeParam;
import com.ysd.lis.request.qc.QcPageDto;
import com.ysd.lis.request.qc.QcResultAddParam;
import com.ysd.lis.request.qc.QcResultParam;

import java.sql.Timestamp;
import java.util.List;

/**
 * <p>
 * cold_chain.t_user 服务类
 * </p>
 *
 * @author peng
 * @since 2021-10-08
 */
public interface QcMaterialItemResultService extends IService<QcMaterialItemResult> {

    Result getQcMaterialItemResultData(QcResultTimeParam qcResultTimeParam);
    Result addQcMaterialItemResult(QcResultAddParam qcResultAddParam);
    Result getQcResultByMonth(QcPageDto dto);

    Result saveOrUpdateMaterialResult(QcResultParam param);

    Result getIQCMaterialsInfoAsync(QcPageDto dto);

    Result transToQCResultManyAsync(List<String> labRptresultIds);

    Result transToQcResultByMainInfo(QcResultAddParam qcResultAddParam);

    Result transToQcResultByRptResultId(QcResultAddParam qcResultAddParam);

    Result QcInstrItemRuleUpdateAsync(String materialItemId, String qcItemId, String instrId, Timestamp beginDate, Timestamp endDate);

    Result getQcResultListByQcMaterial(QcResultTimeParam qcResultTimeParam);

    Result batchDeleteMaterialItemResult(QcResultParam dto);

    Result findQcMaterialMonthData(QcResultParam dto);
}
